package com.common.operationLog.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.common.operationLog.entity.OperationLogEntity;
import com.common.operationLog.pojo.bo.OperationLogBO;
import com.common.operationLog.pojo.req.OperationLogReqDTO;
import com.common.operationLog.pojo.res.OperationLogModuleResDTO;
import com.common.operationLog.pojo.res.OperationLogResDTO;
import com.xiaopeng.common.page.PageVO;

import java.util.List;

/**
 * <p>
 * 操作日志记录表 服务类
 * </p>
 *
 * @author xiaopeng
 * @since 2025-05-25
 */
public interface IOperationLogService extends IService<OperationLogEntity> {


    /**
     * 获取操作日志操作模块和操作类型
     * @return
     */
    List<OperationLogModuleResDTO> getModuleAndTypeList();

    /**
     * 查询操作日志分页列表
     * @param reqDTO
     * @return
     */
    PageVO<OperationLogResDTO> selectPage(OperationLogReqDTO reqDTO);

    /**
     * 查询操作日志列表
     * @param reqDTO
     * @return
     */
    List<OperationLogResDTO> selectList(OperationLogReqDTO reqDTO);

    /**
     * 保存操作日志
     * @param operationLogBO
     * @return
     */
    void save(OperationLogBO operationLogBO);

}
